home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mm / ccmd / makefile.msc < prev    next >
Encoding:
Makefile  |  1990-12-18  |  4.6 KB  |  224 lines

  1. #
  2. # Copyright (c) 1986, 1990 by The Trustees of Columbia University in
  3. # the City of New York.  Permission is granted to any individual or
  4. # institution to use, copy, or redistribute this software so long as it
  5. # is not sold for profit, provided this copyright notice is retained.
  6. #
  7. # Author: Howie Kaye
  8.  
  9. .SUFFIXES: .c .o .obj .exe .a .lib .h .h4 .tmp
  10.  
  11. # termination char for cmds.   ";" for msc
  12. # CMDTERM=
  13. CMDTERM=;
  14.  
  15. # command to invoke C compiler
  16. # CC=cc -D$(MACHINE) -c -g
  17. CC=msc
  18. # CC=lc
  19.  
  20. # command to delete a file
  21. # RM=rm
  22. RM=erase
  23.  
  24. # command to invoke the linker
  25. # LINK=cc -o $@ $*.${OBJ} ccmd.a -ltermlib $(CMDTERM)
  26. LINK=link $*.${OBJ},$@,,$(LIBNAME) $(CMDTERM)
  27.  
  28. # command to copy a file
  29. # COPY=cp
  30. COPY=copy
  31.  
  32. # name of library to create
  33. # LIBNAME=ccmd-noran.a
  34. LIBNAME=ccmd.lib
  35.  
  36. # command to add an object file to a library
  37. # LIBADD=ar r $(LIBNAME) $?
  38. LIBADD=lib $(LIBNAME)+$<-$<
  39.  
  40. # command to reorder the library
  41. # RANLIB=ranlib
  42. RANLIB=rem
  43.  
  44. # special file extension for this OS
  45. # EXT=unx
  46. EXT=DOS
  47.  
  48. # extention for EXE files.
  49. # EXE=
  50. EXE=.exe
  51.  
  52. # extension for OBJ files
  53. # OBJ=o
  54. OBJ=obj
  55.  
  56. split$(EXE): split.c
  57.     $(CC) split.c $(CMDTERM)
  58.     $(LINK) 
  59.  
  60. cmfnc.h: cmfnc.h4 cmconf.h4 cmcfm.cnf cmkey.cnf cmnum.cnf cmfld.cnf \
  61.      cmqst.cnf cmtxt.cnf cmswi.cnf cmtad.cnf cmtok.cnf cmnoi.cnf \
  62.      cmgnrc.cnf cmfil.cnf split$(EXE)
  63.     m4 cmfnc.h4 > cmfnc.tmp
  64.     split < cmfnc.tmp
  65.     $(RM) cmfnc.tmp
  66.  
  67. cmfncs.h: cmfnc.h4 cmconf.h4 cmcfm.cnf cmkey.cnf cmnum.cnf cmfld.cnf \
  68.       cmqst.cnf cmtxt.cnf cmswi.cnf cmtad.cnf cmtok.cnf cmnoi.cnf \
  69.       cmgnrc.cnf cmfil.cnf split$(EXE)
  70.     m4 cmfnc.h4 > cmfnc.tmp
  71.     split < cmfnc.tmp
  72.     $(RM) cmfnc.tmp
  73.  
  74. ccmd.$(OBJ): ccmd.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  75.     $(CC) ccmd.c $(CMDTERM)
  76.  
  77. ccmdut.$(OBJ): ccmdut.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  78.     $(CC) ccmdut.c $(CMDTERM)
  79.  
  80. ccmdio.$(OBJ): ccmdio.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  81.     $(CC) ccmdio.c $(CMDTERM)
  82.  
  83. ccmdmd.c: ccmdmd.$(EXT)
  84.     $(COPY) ccmdmd.$(EXT) ccmdmd.c
  85.  
  86. ccmdmd.$(EXT):
  87.  
  88. ccmdmd.$(OBJ): ccmdmd.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  89.     $(CC) ccmdmd.c $(CMDTERM)
  90.  
  91. ccmdst.$(OBJ): ccmdst.c ccmd.h ccmdmd.h cmfnc.h cmfnc.h cmfncs.h
  92.     $(CC) ccmdst.c $(CMDTERM)
  93.  
  94. stdact.$(OBJ): stdact.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  95.     $(CC) stdact.c $(CMDTERM)
  96.  
  97. cmcfm.$(OBJ): cmcfm.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  98.     $(CC) cmcfm.c $(CMDTERM)
  99.  
  100. cmkey.$(OBJ): cmkey.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  101.     $(CC) cmkey.c $(CMDTERM)
  102.  
  103. cmnum.$(OBJ): cmnum.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  104.     $(CC) cmnum.c $(CMDTERM)
  105.  
  106. cmqst.$(OBJ): cmqst.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  107.     $(CC) cmqst.c $(CMDTERM)
  108.  
  109. cmnoi.$(OBJ): cmnoi.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  110.     $(CC) cmnoi.c $(CMDTERM)
  111.  
  112. cmtxt.$(OBJ): cmtxt.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  113.     $(CC) cmtxt.c $(CMDTERM)
  114.  
  115. cmfld.$(OBJ): cmfld.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  116.     $(CC) cmfld.c $(CMDTERM)
  117.  
  118. cmtok.$(OBJ): cmtok.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  119.     $(CC) cmtok.c $(CMDTERM)
  120.  
  121. cmswi.$(OBJ): cmswi.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  122.     $(CC) cmswi.c $(CMDTERM)
  123.  
  124. cmtad.$(OBJ): cmtad.c ccmd.h ccmdmd.h datime.h cmfnc.h cmfncs.h
  125.     $(CC) cmtad.c $(CMDTERM)
  126.  
  127. datime.$(OBJ): datime.c datime.h tzone.h dtpat.h
  128.     $(CC) datime.c $(CMDTERM)
  129.  
  130. cmfil.$(OBJ): cmfil.c ccmd.h ccmdmd.h cmfil.h cmfnc.h cmfncs.h cmfbrk.$(EXT)
  131.     $(CC) cmfil.c $(CMDTERM)
  132.  
  133. cmfbrk.$(EXT):
  134.  
  135. filelist.$(OBJ): filelist.c ccmd.h ccmdmd.h cmfnc.h cmfncs.h
  136.     $(CC) filelist.c $(CMDTERM)
  137.  
  138. fmatch.$(OBJ): fmatch.c
  139.     $(CC) fmatch.c $(CMDTERM)
  140.  
  141. $(LIBNAME):: ccmd.$(OBJ)
  142.     $(LIBADD) $(CMDTERM)
  143.  
  144. $(LIBNAME):: ccmdut.$(OBJ)
  145.     $(LIBADD) $(CMDTERM)
  146.  
  147. $(LIBNAME):: ccmdio.$(OBJ)
  148.     $(LIBADD) $(CMDTERM)
  149.  
  150. $(LIBNAME):: ccmdmd.$(OBJ)
  151.     $(LIBADD) $(CMDTERM)
  152.  
  153. $(LIBNAME):: ccmdst.$(OBJ)
  154.     $(LIBADD) $(CMDTERM)
  155.  
  156. $(LIBNAME):: stdact.$(OBJ)
  157.     $(LIBADD) $(CMDTERM)
  158.  
  159. $(LIBNAME):: cmcfm.$(OBJ)
  160.     $(LIBADD) $(CMDTERM)
  161.  
  162. $(LIBNAME):: cmkey.$(OBJ)
  163.     $(LIBADD) $(CMDTERM)
  164.  
  165. $(LIBNAME):: cmnum.$(OBJ)
  166.     $(LIBADD) $(CMDTERM)
  167.  
  168. $(LIBNAME):: cmqst.$(OBJ)
  169.     $(LIBADD) $(CMDTERM)
  170.  
  171. $(LIBNAME):: cmnoi.$(OBJ)
  172.     $(LIBADD) $(CMDTERM)
  173.  
  174. $(LIBNAME):: cmtxt.$(OBJ)
  175.     $(LIBADD) $(CMDTERM)
  176.  
  177. $(LIBNAME):: cmfld.$(OBJ)
  178.     $(LIBADD) $(CMDTERM)
  179.  
  180. $(LIBNAME):: cmtok.$(OBJ)
  181.     $(LIBADD) $(CMDTERM)
  182.  
  183. $(LIBNAME):: cmswi.$(OBJ)
  184.     $(LIBADD) $(CMDTERM)
  185.  
  186. $(LIBNAME):: cmtad.$(OBJ)
  187.     $(LIBADD) $(CMDTERM)
  188.  
  189. $(LIBNAME):: datime.$(OBJ)
  190.     $(LIBADD) $(CMDTERM)
  191.  
  192. $(LIBNAME):: cmfil.$(OBJ)
  193.     $(LIBADD) $(CMDTERM)
  194.  
  195. $(LIBNAME):: filelist.$(OBJ)
  196.     $(LIBADD)  $(CMDTERM)
  197.  
  198. $(LIBNAME):: fmatch.$(OBJ)
  199.     $(LIBADD) $(CMDTERM)
  200.  
  201. #only for msdos
  202. dir.${OBJ}: dir.c
  203.     $(CC) dir.c $(CMDTERM)
  204.  
  205. $(LIBNAME):: dir.$(OBJ)
  206.     $(LIBADD) $(CMDTERM)
  207.  
  208. ccmd.a:    $(LIBNAME)
  209.     $(COPY) $(LIBNAME) ccmd.a
  210.     $(RANLIB) ccmd.a
  211.  
  212. test.$(OBJ): test.c ccmd.h ccmdmd.h cmfnc.h datime.h
  213.     $(CC) test.c $(CMDTERM)
  214.  
  215. test$(EXE): test.$(OBJ) ccmd.a
  216.     $(LINK)
  217.  
  218. xxx.$(OBJ): xxx.c ccmd.h ccmdmd.h cmfnc.h 
  219.     $(CC) xxx.c $(CMDTERM)
  220.  
  221. xxx$(EXE): xxx.$(OBJ) ccmd.a
  222.     $(LINK)
  223.  
  224.